/*
 * Oppasser.cc
 *
 *  Created on: Mar 15, 2011
 *      Author: s146009
 */

#include "Oppasser.h"
#include <iostream>

Oppasser::Oppasser(string Naam, int Leeftijd, string wnType) :
		Werknemer(Naam, Leeftijd) {
	type = wnType;

}

Oppasser::~Oppasser() {
	if (oppas_Kooi != 0) {
		oppas_Kooi.~RefHandle();
	}
	type = "";
}

int Oppasser::berekenSalaris() {
	int aantal = oppas_Kooi->getDierenSize();
	return 20000 + aantal * 1000;
}

void Oppasser::setKooi(RefHandle<Kooi> k) {
	oppas_Kooi = k;
}

void Oppasser::drukaf() {
	cout << toString() << endl; // endl also flushes
}

string Oppasser::toString() {
	stringstream stringstr;
	stringstr << "Naam: " << de_naam << ", Leeftijd : " << de_leeftijd
			<< ", Categorie: " << type;
	if (oppas_Kooi != 0) {
		stringstr << ",  Opasser van kooisoort:" << oppas_Kooi->getSoort()
				<< endl;
	}
	return stringstr.str();
}

string Oppasser::getType() {
	return type;
}
